﻿using Resn.WhuPub.DML;

namespace Resn.WhuPub.BIL
{
        /// <summary>
        ///定义课程的属性和方法
        /// </summary>
        public interface ICourse : IEntity
        {
                #region 属性

                #region 基本属性

                /// <summary>
                ///获取课程运作Id
                /// </summary>
                /// <value>
                ///课程运作Id
                /// </value>
                string MajorOperationId { get; }

                /// <summary>
                ///获取或设置课程教师标识
                /// </summary>
                /// <value>
                ///教师标识
                /// </value>
                string ContactId { get; set; }

                /// <summary>
                ///获取或设置课程名称
                /// </summary>
                /// <value>
                ///课程名称
                /// </value>
                string Name { get; set; }

                /// <summary>
                ///获取或设置课程是否必修
                /// </summary>
                /// <value>
                ///课程是否必修
                /// </value>
                bool IsCompulsory { get; set; }

                /// <summary>
                ///获取或设置学生人数
                /// </summary>
                /// <value>
                ///学生人数
                /// </value>
                int StudentsAmount { get; set; }

                #endregion

                /// <summary>
                ///获取或设置课程模型
                /// </summary>
                /// <value>
                ///课程模型
                /// </value>
                CourseModel Model { get; }

                #endregion

                /// <summary>
                /// 创建课本
                /// </summary>
                /// <param name="bookId">书籍标识</param>
                /// <param name="useAmount">使用数量</param>
                /// <returns>
                /// 创建的课本对象
                /// </returns>
                ICourseBook CreateCourseBook(string bookId, int useAmount);

                
        }
}